package com.isdepci.project.carbon.mapper;

import java.math.BigDecimal;
import java.util.List;
import com.isdepci.project.carbon.domain.ProductCarbonConsumables;
import org.apache.ibatis.annotations.Param;
/**
 * 产品碳足迹-产品排放行为记录Mapper接口
 *
 * @author isdepci
 * @date 2024-11-11
 */
public interface ProductCarbonConsumablesMapper
{

    List<ProductCarbonConsumables> selectEmissionPath(@Param("productId") Long productId, @Param("categorizeCode") String categorizeCode, @Param("factorNum") BigDecimal factorNum);

    /**
     * 查询产品碳足迹-产品排放行为记录
     */
     ProductCarbonConsumables selectProductCarbonConsumablesById(Long id);

    /**
     * 查询产品碳足迹-产品排放行为记录列表
     */
     List<ProductCarbonConsumables> selectConsumablesListByProductId(@Param("productId") Long productId);
     List<ProductCarbonConsumables> selectConsumablesListByProductCarbonId(@Param("productCarbonId") Long productCarbonId);
     List<ProductCarbonConsumables> selectProductCarbonConsumablesList(ProductCarbonConsumables productCarbonConsumables);
     List<ProductCarbonConsumables> selectEmissionPathList(ProductCarbonConsumables param);

     List<ProductCarbonConsumables>  selectProductCarbonConsumablesByIds(@Param("ids")List<Long> ids);

    void insertList(@Param("list") List<ProductCarbonConsumables> list);
    /**
     * 新增产品碳足迹-产品排放行为记录
     */
     int insertProductCarbonConsumables(ProductCarbonConsumables productCarbonConsumables);

    /**
     * 修改产品碳足迹-产品排放行为记录
     */
     int updateProductCarbonConsumables(ProductCarbonConsumables productCarbonConsumables);

    /**
     * 删除产品碳足迹-产品排放行为记录
     */
     int deleteProductCarbonConsumablesById(Long id);

    /**
     * 批量删除产品碳足迹-产品排放行为记录
     */
     int deleteProductCarbonConsumablesByIds(Long[] ids);

    int deleteListByProductCarbonIds(Long[] ids);
    int deleteListByProductCarbonId(Long id);



}
